//package cn.cnooc.config;
//
//import org.eclipse.paho.client.mqttv3.*;
//import org.eclipse.paho.client.mqttv3.persist.MemoryPersistence;
//
//public class MqttAccept {
//
//    public static void main(String[] args) {
//        //MQTT协议前缀
//        String urlFrontSuffix = "tcp://192.168.0.104:1883";
//        String clienId = String.valueOf(System.currentTimeMillis());
//        System.out.println(clienId);
//        //Topic前缀
//        String allTopic = "test";
//        try {
//            MemoryPersistence memoryPersistence = new MemoryPersistence();
//            MqttClient client = new MqttClient(urlFrontSuffix, clienId, memoryPersistence);
//            MqttConnectOptions options = new MqttConnectOptions();
//            // 设置客户端和服务器是否应在重新启动和重新连接期间记住状态 默认false
//            options.setCleanSession(true);
//            // 设置超时时间
//            options.setConnectionTimeout(10);
//            // 设置会话心跳时间
//            options.setKeepAliveInterval(20);
//            // 设置超时时间
//            options.setConnectionTimeout(10);
//            // 设置会话心跳时间
//            options.setKeepAliveInterval(20);
//            // 设置回调函数，当订阅到信息时调用此方法
//            client.setCallback(new MqttCallback() {
//                @Override
//                public void connectionLost(Throwable throwable) {
//                    // 连接失败时调用  重新连接订阅
//                    try {
//                        System.out.println("开始重连");
//                        Thread.sleep(3000);
//                        client.connect(options);
//                    } catch (InterruptedException e) {
//                        e.printStackTrace();
//                    } catch (MqttSecurityException e) {
//                        e.printStackTrace();
//                    } catch (MqttException e) {
//                        e.printStackTrace();
//                    }
//                }
//
//                @Override
//                public void messageArrived(String s, MqttMessage mqttMessage) throws Exception {
//                    // 订阅成功，并接受信息时调用
//                    String payload = new String(mqttMessage.getPayload()); // 获取消息内容
//                    System.out.println("MqttAccept_________"+ payload);
//                }
//
//                @Override
//                public void deliveryComplete(IMqttDeliveryToken iMqttDeliveryToken) {
//                    System.out.println("deliveryComplete");
//                }
//            });
//            client.connect(options);
//            client.subscribe(allTopic,0);
//            System.out.println("连接成功");
//        } catch (Exception e) {
//            e.printStackTrace();
//        }
//    }
//}
//
